home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1997 / HAM Radio 1997.iso / vcls / date / examples / extrig0.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1996-04-08  |  1.8 KB  |  81 lines

  1. unit Extrig0;
  2.  
  3. interface
  4.  
  5. uses
  6.   SysUtils, WinTypes, WinProcs, WinCrt, Messages, Classes, Graphics,
  7.   Controls, Forms, Dialogs, StdCtrls, AdPort, AdTerm;
  8.  
  9. type
  10.   TExTrigTest = class(TForm)
  11.     ApdComPort1: TApdComPort;
  12.     StartTest: TButton;
  13.     Label1: TLabel;
  14.     procedure ApdComPort1TriggerAvail(CP: TObject; Count: Word);
  15.     procedure ApdComPort1TriggerData(CP: TObject; TriggerHandle : Word);
  16.     procedure ApdComPort1TriggerTimer(CP: TObject; TriggerHandle: Word);
  17.     procedure StartTestClick(Sender: TObject);
  18.   private
  19.     { Private declarations }
  20.     TimerHandle : Word;
  21.     DataHandle  : Word;
  22.   public
  23.     { Public declarations }
  24.   end;
  25.  
  26. var
  27.   ExTrigTest: TExTrigTest;
  28.  
  29. implementation
  30.  
  31. {$R *.DFM}
  32.  
  33. procedure WriteIt(C : Char);
  34. begin
  35.   if Ord(C) > 32 then
  36.     Write(C)
  37.   else
  38.     Write('[', Ord(C), ']');
  39. end;
  40.  
  41. procedure TExTrigTest.ApdComPort1TriggerAvail(CP: TObject; Count: Word);
  42. var
  43.   I : Word;
  44.   C : Char;
  45. begin
  46.   WriteLn('OnTriggerAvail event: ', Count, ' bytes received');
  47.   for I := 1 to Count do begin
  48.     C := ApdComPort1.GetChar;
  49.     WriteIt(C);
  50.   end;
  51.   WriteLn;
  52.   WriteLn('--------');
  53. end;
  54.  
  55. procedure TExTrigTest.ApdComPort1TriggerData(CP: TObject; TriggerHandle: Word);
  56. var
  57.   I : Word;
  58.   C : Char;
  59. begin
  60.   WriteLn('OnTriggerData event: ', TriggerHandle);
  61. end;
  62.  
  63. procedure TExTrigTest.ApdComPort1TriggerTimer(CP: TObject;
  64.   TriggerHandle: Word);
  65. begin
  66.   WriteLn('OnTriggerTimer event: ', TriggerHandle);
  67. end;
  68.  
  69. procedure TExTrigTest.StartTestClick(Sender: TObject);
  70. begin
  71.   ApdComPort1.TriggerLength := 1;
  72.   TimerHandle := ApdComPort1.AddTimerTrigger;
  73.   ApdComPort1.SetTimerTrigger(TimerHandle, 91, True);
  74.   DataHandle := ApdComPort1.AddDataTrigger('123412'#13, True);
  75.  
  76.   {Send a string to a modem that will hit all triggers}
  77.   ApdComPort1.PutString('ATI'^M);
  78. end;
  79.  
  80. end.
  81.